<ui:composition template="template/template.xhtml"
	xmlns="http://www.w3.org/1999/xhtml"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui">

	<ui:param name="panelTitle" value="Nuevo Usuario" />

	<ui:define name="panelContent">
		<h:form>
			<p:growl id="messages" autoUpdate="false" showDetail="true"
				globalOnly="true" />

			<div align="center">
				<h:panelGrid columns="1" cellspacing="10" width="60%">
					<p:panel header="Datos de Usuario">
						<h:panelGrid id="displayView" columns="3" cellpadding="8"
							styleClass="admin-input-text">

							<p:column>
								<h:outputLabel for="nombre" value="Nombre: " />
							</p:column>
							<p:column>
								<p:inputText id="nombre" value="#{usuarioMB.nombre}"
									required="true" requiredMessage="Campo nombre obligatorio"
									maxlength="40">
									<f:validateLength minimum="2" />
									<p:ajax event="blur" update="nombreMsg" />
								</p:inputText>
							</p:column>
							<p:column>
								<p:message id="nombreMsg" for="nombre" display="icon" />
							</p:column>

							<p:column>
								<h:outputLabel for="apellido" value="Apellido: " />
							</p:column>
							<p:column>
								<p:inputText id="apellido" value="#{usuarioMB.apellido}"
									required="true" requiredMessage="Campo apellido obligatorio"
									maxlength="40">
									<f:validateLength minimum="2" />
									<p:ajax event="blur" update="apellidoMsg" />
								</p:inputText>
							</p:column>
							<p:column>
								<p:message id="apellidoMsg" for="apellido" display="icon" />
							</p:column>

							<p:column>
								<h:outputLabel for="email" value="E-mail: " />
							</p:column>
							<p:column>
								<p:inputText id="email" value="#{usuarioMB.email}"
									required="true" requiredMessage="Campo e-mail obligatorio"
									type="email" maxlength="100"
									validator="#{validatorMB.isValidEmailUsuario}">
									<f:validateLength minimum="5" />
									<p:ajax event="blur" update="emailMsg" />
								</p:inputText>
							</p:column>
							<p:column>
								<p:message id="emailMsg" for="email" display="icon" />
							</p:column>

							<p:column>
								<h:outputText for="tipoDoc" value="Tipo Doc.: " />
							</p:column>
							<p:column>
								<p:selectOneMenu style="width: 293px"
									value="#{usuarioMB.tipoDoc}" effect="fade">
									<f:selectItems value="#{tipoDocMB.tipoDocList}" var="tipoDoc"
										itemValue="#{tipoDoc}" itemLabel="#{tipoDoc.nombre}" />
									<f:converter converterId="tipoDocConverter" />
								</p:selectOneMenu>
							</p:column>
							<p:column></p:column>

							<p:column>
								<h:outputLabel for="nroDoc" value="Nro. Documento: " />
							</p:column>
							<p:column>
								<p:inputText id="nroDoc" value="#{usuarioMB.nroDoc}"
									required="true"
									requiredMessage="Campo nro. documento obligatorio"
									maxlength="10" type="numeric">
									<f:validateLength minimum="6" />
									<p:ajax event="blur" update="nroDocMsg" />
								</p:inputText>
							</p:column>
							<p:column>
								<p:message id="nroDocMsg" for="nroDoc" display="icon" />
							</p:column>

							<h:outputLabel for="nombreUser" value="Nombre Usuario: " />
							<p:inputText id="nombreUser" value="#{usuarioMB.nombreUser}"
								required="true" maxlength="25"
								requiredMessage="Campo nombre usuario obligatorio"
								validator="#{validatorMB.isValidUserName}">
								<f:validateLength minimum="5" />
								<p:ajax event="blur" update="nombreUserMsg" />
							</p:inputText>
							<p:message id="nombreUserMsg" for="nombreUser" display="icon" />

							<h:outputLabel for="password" value="Contraseña: " />
							<p:password id="password" value="#{usuarioMB.password}"
								required="true" feedback="true"
								requiredMessage="Campo contraseña obligatorio"
								label="Contraseña" match="password">
								<f:validateLength minimum="5" update="passwordRepeatMsg" />
								<p:ajax event="blur" update="passwordMsg" />
							</p:password>
							<p:message id="passwordMsg" for="password" display="icon" />

							<h:outputLabel for="passwordRepeat" value="Repetir Contraseña: " />
							<p:password id="passwordRepeat" value="#{usuarioMB.password}"
								required="true" feedback="true" label="Contraseña repetida"
								requiredMessage="Campo repetir contraseña obligatorio">
								<f:validateLength minimum="5" update="passwordRepeatMsg" />
								<p:ajax event="blur" update="passwordRepeatMsg" />
							</p:password>
							<p:message id="passwordRepeatMsg" for="passwordRepeat"
								display="icon" />
						</h:panelGrid>
					</p:panel>
					<p:column>
						<div align="center">
							<p:commandButton id="addUser" value="Registrar Usuario"
								action="#{usuarioMB.addUsuarioAdmin}" ajax="false" />
							<p:commandButton id="reset" value="Cancelar" immediate="true"
								action="/admin/usuariolist.html?faces-redirect=true"
								ajax="false" style="margin-right:15px" />
						</div>
					</p:column>
				</h:panelGrid>
			</div>
		</h:form>
	</ui:define>
</ui:composition>